package com.example.petcare.service;

import com.example.petcare.pojo.Goods;
import com.example.petcare.pojo.HostDemand;
import com.example.petcare.pojo.PageBean;
import com.example.petcare.pojo.Provider;

import java.util.List;

public interface HostService {

    // 发布托管需求
    void add(HostDemand hostDemand);

    // 查询托管需求列表（条件分页查询）
    PageBean<HostDemand> list(Integer pageNum, Integer pageSize, Integer petId, String location, Integer status);

    // 修改托管需求
    void update(HostDemand hostDemand);


    // 删除托管需求
    void delete(Integer hostId);


    // 查询所有已经审核过的商家的具体信息，从provider表中查询
    List<Provider> listProvider();

    // 删除已经被拒单的托管需求，利用userId删除，userId从threadLocal中获取
    void deleteByUserId();

    // 查询当前用户被拒单的托管需求
    List<HostDemand> listReject();

    // 是否有新订单
    Integer hasAccept();

    // 是否有订单完成
    Integer hasFinish();


    // 查询托管需求详情
    HostDemand findById(Integer hostId);

    // 更新支付状态
    void updatePayStatus(Integer hostId);

    // 更新托管需求状态
    List<Goods> getGoodsList(Integer hostId);

    // 根据providerId查询商家信息
    Provider getProviderById(Integer hostId);
}
